<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">

<html>

<head>

<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">

<title>The Hackers Guide for console-setup - The ckbcomp Utility</title>

</head>

<body>

<p><a name="ch-ckbcomp"></a></p>
<hr>

<p>
[ <a href="ch4.html">previous</a> ]
[ <a href="index.html#contents">Contents</a> ]
[ <a href="ch1.html">1</a> ]
[ <a href="ch2.html">2</a> ]
[ <a href="ch3.html">3</a> ]
[ <a href="ch4.html">4</a> ]
[ 5 ]
[ <a href="index.html">next</a> ]
</p>

<hr>

<h1>
The Hackers Guide for <samp>console-setup</samp>
<br>Chapter 5 - The <code>ckbcomp</code> Utility
</h1>

<hr>

<p>
The <code>ckbcomp</code> accepts more or less the same arguments as the
<code>setxkbmap</code> utility:
</p>

<pre>
     Usage: ckbcomp [args] [&lt;layout&gt; [&lt;variant&gt; [&lt;option&gt; ... ]]]
     Where legal args are:
     -?,-help            Print this message
     -charmap &lt;name&gt;         Specifies the encoding to use
     -I&lt;dir&gt;             Add &lt;dir&gt; to list of directories to be used
     -keycodes &lt;name&gt;    Specifies keycodes component name
     -symbols &lt;name&gt;     Specifies symbols component name
     -rules &lt;name&gt;       Name of rules file to use
     -model &lt;name&gt;       Specifies model used to choose component names
     -layout &lt;name&gt;      Specifies layout used to choose component names
     -variant &lt;name&gt;     Specifies layout variant used to choose component names
     -v[erbose] [&lt;lvl&gt;]  Sets verbosity (1..10).  Higher values yield
                         more messages
     -option &lt;name&gt;      Adds an option used to choose component names
</pre>

<p>
The main difference is the <code>-charmap</code> parameter which specifies the
encoding to use.  If the encoding is <var>ENC</var> then one of the following
files should exist:
</p>
<ul>
<li>
<p>
<code><var>ENC</var></code>
</p>
</li>
</ul>
<ul>
<li>
<p>
<code><var>ENC</var>.gz</code>
</p>
</li>
</ul>
<ul>
<li>
<p>
<code><var>ENC</var>.acm</code>
</p>
</li>
</ul>
<ul>
<li>
<p>
<code><var>ENC</var>.acm.gz</code>
</p>
</li>
</ul>
<ul>
<li>
<p>
<code>/usr/share/consoletrans/<var>ENC</var></code>
</p>
</li>
</ul>
<ul>
<li>
<p>
<code>/usr/share/consoletrans/<var>ENC</var>.gz</code>
</p>
</li>
</ul>
<ul>
<li>
<p>
<code>/usr/share/consoletrans/<var>ENC</var>.acm</code>
</p>
</li>
</ul>
<ul>
<li>
<p>
<code>/usr/share/consoletrans/<var>ENC</var>.acm.gz</code>
</p>
</li>
</ul>
<ul>
<li>
<p>
<code>acm/<var>ENC</var>.acm</code>
</p>
</li>
</ul>

<p>
This file should define the so called Application Character Map for
<var>ENC</var>.
</p>

<p>
The option <code>-I</code> add a directory to the list of directories where the
X keyboard definitions are searched.  By default this directory list contains
the following directories:
</p>
<ul>
<li>
<p>
<code>/etc/console-setup/ckb</code>
</p>
</li>
</ul>
<ul>
<li>
<p>
<code>/etc/X11/xkb</code>
</p>
</li>
</ul>
<ul>
<li>
<p>
<code>/usr/X11R6/lib/X11/xkb</code>
</p>
</li>
</ul>

<hr>

<p>
[ <a href="ch4.html">previous</a> ]
[ <a href="index.html#contents">Contents</a> ]
[ <a href="ch1.html">1</a> ]
[ <a href="ch2.html">2</a> ]
[ <a href="ch3.html">3</a> ]
[ <a href="ch4.html">4</a> ]
[ 5 ]
[ <a href="index.html">next</a> ]
</p>

<hr>

<p>
The Hackers Guide for <samp>console-setup</samp>
</p>

<address>
Anton Zinoviev <code><a href="mailto:anton@lml.bas.bg">anton@lml.bas.bg</a></code><br>
<br>
</address>
<hr>

</body>

</html>

